﻿// <copyright file="IBestKingsProvider.cs" company="Ecole Normale Supérieure">
// Released under GPLv2
// </copyright>
// <summary>Interface of a provider of a list of best kings' ids</summary>

namespace Sqwarea.Persistence
{
    using System.Collections.Generic;

    /// <summary>
    /// Interface of a provider of a list of best kings' user.
    /// WARNING : User are saved not King class because it makes the display easier.
    /// </summary>
    public interface IBestKingsProvider
    {
        /// <summary>
        /// Returns an array of best kings' user s
        /// Notice it's already sorted
        /// </summary>
        /// <returns>An array of best kings' user</returns>
        IEnumerable<King> GetBestKings();

        /// <summary>
        /// Updates the array of best kings' users
        /// </summary>
        /// <param name="kinglist">Best kings' users, sorted by the number of squares the king owns</param>
        void UpdateBestKings(IEnumerable<King> kinglist);
    }
}
